home *** CD-ROM | disk | FTP | other *** search
/ Belgian Amiga Club - ADF Collection / BS1 part 34.zip / BS1 part 34 / Codex ass dev system v1.10.adf / include / graphics / copper.i < prev    next >
Text File  |  1988-09-19  |  2KB  |  60 lines

  1.  
  2.    IFND  GRAPHICS_COPPER_I
  3. GRAPHICS_COPPER_I SET   1
  4. ********************************************************************
  5. *               Commodore-Amiga, Inc.                              *
  6. *               copper.i                                           *
  7. ********************************************************************
  8.  
  9. COPPER_MOVE equ 0       /* pseude opcode for move #XXXX,dir */
  10. COPPER_WAIT equ 1        /* pseudo opcode for wait y,x */
  11. CPRNXTBUF   equ 2       /* continue processing with next buffer */
  12. CPR_NT_LOF  equ $8000  /* copper instruction only for short frames */
  13. CPR_NT_SHT  equ $4000   /* copper instruction only for long frames */
  14.  
  15.    STRUCTURE   CopIns,0
  16.       WORD  ci_OpCode      * 0 = move, 1 = wait */
  17.       STRUCT   ci_nxtlist,0   * UNION
  18.       STRUCT   ci_VWaitPos,0
  19.       STRUCT   ci_DestAddr,2
  20.  
  21.       STRUCT   ci_HWaitPos,0
  22.       STRUCT   ci_DestData,2
  23.  
  24.    LABEL ci_SIZEOF
  25.  
  26. * structure of cprlist that points to list that hardware actually executes */
  27.    STRUCTURE   cprlist,0
  28.       APTR  crl_Next
  29.       APTR  crl_start
  30.       WORD  crl_MaxCount
  31.    LABEL crl_SIZEOF
  32.  
  33.    STRUCTURE   CopList,0
  34.       APTR  cl_Next;  /* next block for this copper list */
  35.       APTR  cl__CopList;  /* system use */
  36.       APTR  cl_ ViewPort *_ViewPort;    /* system use */
  37.       APTR  cl_CopIns; /* start of this block */
  38.       APTR  cl_CopPtr; /* intermediate ptr */
  39.       APTR  cl_CopLStart;   /* mrgcop fills this in for Long Frame*/
  40.       APTR  cl_CopSStart;   /* mrgcop fills this in for Short Frame*/
  41.       WORD  cl_Count;       /* intermediate counter */
  42.       WORD  cl_MaxCount;   /* max # of copins for this block */
  43.       WORD  cl_DyOffset;    /* offset this copper list vertical waits */
  44.    LABEL cl_SIZEOF
  45.  
  46.    STRUCTURE   UCopList,0
  47.       APTR     ucl_Next;
  48.       APTR     ucl_FirstCopList; /* head node of this copper list */
  49.       APTR     ucl_CopList; /* node in use */
  50.    LABEL ucl_SIZEOF
  51.  
  52. *  private graphics data structure
  53.    STRUCTURE   copinit,0
  54.       STRUCT   copinit_diagstrt,8
  55.       STRUCT   copinit_sprstrtup,2*((2*8*2)+2+(2*2)+2)
  56.       STRUCT   copinit_sprstop,4
  57.    LABEL copinit_SIZEOF
  58.  
  59.    ENDC
  60.